#nullable enable

using System;
using System.Collections.Generic;
using PHMEE.Diagnosis;
using PHMEE.Entities.Diagnosis;

namespace PHMEE.Managers.Diagnosis;

public interface IAlarmRecordManager
{
    AlarmRecord Create(Guid vesselId, Guid unitId, Guid? equipId, Guid pointId, DateTime alarmTimeUtc, string[] faultCodes,
        bool isNoFault, Dictionary<AlarmFeatureValue, AlarmLevel> featureAlarmLevels);

    void SetRemark(AlarmRecord alarmRecord, string remark);

    void SetIsAcked(AlarmRecord alarmRecord, Guid ackedById, string ackedByUserName);
}